Blog

CBWIRE 2.1 Released

Grant Copley October 28, 2022

Spread the word

Grant Copley

October 28, 2022

Spread the word


Share your thoughts

CBWIRE, our ColdBox module that makes building reactive, modern CFML apps delightfully easy, just dropped its 2.1 release. This release contains mostly bug fixes and also the ability to create your UI templates directly within your CBWIRE component using the onRender() method.

We've added an example of using onRender() to our ever growing CBWIRE-Examples Repo that you can run on your machine locally. https://github.com/grantcopley/cbwire-examples

The complete documentation for CBWIRE is available at https://cbwire.ortusbooks.com/.

onRender

Instead of creating a .cfm template, you can define an onRender() method on your component. This method accepts an args argument where data properties and rendered computed properties are passed in.

component extends="cbwire.models.Component" {

    // Data properties
    data = {
        "firstname": "Grant",
        "lastname": "Copley"
    };

    // Computed Properties
    computed = {
        "fullName": function( data ) {
            return data.firstname & " " & data.lastname;
        }
    }

    function onRender( args ) {
        // 'args' contains our rendered data and computed properties
        return "
            <div>
                <h1>Welcome #args.fullName#</h1>
                <h2>Your first name is #args.firstname#</h2>
            </div>
        ";
    }
}

Enhancements

CBWIRE-111 Ability to output component template direct from onRender() method instead of defining a .cfm tempale in views/wires.

Bugs

CBWIRE-119 Computed properties that do not return a value result in error 'variable [VALUE] doesn't exist'

CBWIRE-118 Nested components are causing the template rendering to only render the last nested template

CBWIRE-117 Struct values are not being passed to template and are instead being replaced with an empty string

CBWIRE-116 CBWIRE doesn't work when ColdBox app is in a subdirectory

CBWIRE-115 Getting errors when rendering component templates in latest version of ColdBox

CBWIRE-96 Nested components are not rendering

Add Your Comment

Recent Entries

BoxLang v1.13.0: Compatibility, Concurrency, and Formatter Maturity

BoxLang v1.13.0: Compatibility, Concurrency, and Formatter Maturity

BoxLang 1.13.0 is here, and it marks an important step forward for the platform. This release includes 48 tickets—every one of them completed—reflecting a focused effort on CFML compatibility, a more robust concurrency engine, a production-hardened miniserver, and meaningful tooling improvements.

Luis Majano
Luis Majano
April 30, 2026
🚀 ColdBox CLI 8.11: The Era of AI Skills Comes to Every ColdBox & BoxLang App

🚀 ColdBox CLI 8.11: The Era of AI Skills Comes to Every ColdBox & BoxLang App

ColdBox CLI 8.11 is here, and it's one of the most significant releases we've shipped for AI-assisted development. This release wires the CLI directly into our brand new public skills directory at skills.boxlang.io, brings our AI tooling in line with industry-wide agent conventions, and introduces a wave of quality-of-life improvements that make AI integration feel less like setup and more like infrastructure.

Luis Majano
Luis Majano
April 30, 2026